// 基本数据类型  静态类型校验
var a = 1;
var b = 'hello';
var c = true;
var d = null;
var e = undefined;
console.log(a, b, c, d, e);
// 引用数据类型 
var obj = 1;
var obj1;
obj1 = { name: 'zhangsan', age: 12 };
console.log(obj, obj1, '对象');
var arr = ['1', 2, 3, 4, {}, function () { }];
// 泛型
var arr1 = ['4', '5', '6'];
console.log(arr, arr1, '数组');
var foo = function () {
    console.log('我被调用了');
};
foo();
// 元组 
// 声明一个数组得时候知道数组数量和数组元素类型
var arr2 = [1, 'hello', true];
console.log(arr2);
// 枚举类型 
// 默认枚举
var Season;
(function (Season) {
    Season[Season["spring"] = 0] = "spring";
    Season[Season["summer"] = 1] = "summer";
    Season[Season["autumn"] = 2] = "autumn";
    Season[Season["winter"] = 3] = "winter";
})(Season || (Season = {}));
;
// console.log(Season,Season.summer,Season[1]);
// 字符串枚举
var Gender;
(function (Gender) {
    Gender["male"] = "\u7537";
    Gender["female"] = "\u5973";
})(Gender || (Gender = {}));
console.log(Gender, Gender.female);
// any 任意数据类型
var aa = 1;
console.log(aa);
// void 函数不需要返回值 可以给函数设置void
// 抽象方法 没有方法体得方法 
// function sum():void{
// 	console.log('我被调用了');
// }
// sum()
// 设置函数参数可选 ? 表示可有可无
function sum(b, a) {
    console.log(a, b);
}
sum('1', 2);
var str1 = 'Hello TS';
var str2 = 'Hello TS';
